using System.Drawing;
using CloudShot.Editor.CanvasFigures;
using CloudShot.Entities;

namespace CloudShot.Editor
{
  public interface IDrawingCanvas
  {
    CanvasCrop Crop { get; }
    GraphicsList GraphicsList { get; }
    bool CaptureMouse { get; set; }
    Rectangle ClientRectangle { get; }
    void RefreshCanvas();
    void RefreshCanvas(Rectangle clipRectangle);
    CaptureResult CaptureImage();
    void CancelSelection();
    void ShowHint(string hint);
    void HideHint();
    void BeginTextEdit(CanvasText canvasText);
    Point GetLastMousePosition();
    bool IsAnyModifierPressed(KeyModifiers modifiers);
    Point PointToScreen(Point point);
  }
}